Reverse-Engineering the Design
最初のステップ:コードを見る
reverse-engineering自体の意味は「他社の製品を分解・分析し、その技術を自社製品の開発に取り込む手法」(ウィズダム英和辞典)
The best approach is to ask somebody on the team to explain the design to you.
コードを見ていく場合、ファイルの責務を考えるところから始める
タスクに関連する責務のファイルが分からなければ、UIから始めて依存を追っていく
UI: 画面がなくても、RESTfulなendpointやCLIから追える(自分の体験)
開始点を見つけたらファイルを開いてメソッドや関数の名前を飛んでいく
ファイルの責務の推測を確定/修正していく
手がかりがほしければテストの名前を見る
imports(ファイルの依存関係)を確認
対象のファイルとそれらの責務がつかめたら、それらがどのように関連しているかを見る
アドホックなスケッチを描く
ツールを使うよりも自分で描くのをオススメしている